package cn.itsource.itsource.domain;

import cn.itsource.itsource.controller.FileController;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;

import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Data
@Table(name="t_pet")
public class Pet {

    private Long adoptId;
    @Id
    private Long id;
    private String name;
    private String resources;
    private Double saleprice;
    private Date offsaletime;
    private Date onsaletime;
    private Integer state;
    private Double costprice;
    private Date createtime;
    private Long typeId;
    private Long shopId;
    private Long userId;

    //添加一个将resources相对地址转换为 网络可访问的完整地址、
    @Transient
    private String resourcesUrl;//新增字段，但是表中是没有，所以要添加一个注解，告诉tkmapper,这是一个校增的但表中不存在的字段

    //重写getter方法，目的：返回到前端时，新增的这个字段，会根据重写的getter方法，来重新赋值
    public String getResourcesUrl() {
        //目的：将resources中的每一张图片，拼接完整的url地址
        List<String> finalUrls = new ArrayList<>();
        if (StringUtils.isNotBlank(this.resources)) {
            String[] strs = StringUtils.split(this.resources, ",");
            for (String str : strs) {
                finalUrls.add(FileController.FASTDFS_READ_URL + str);
            }
        }
        //循环拼接完后，再将url转换为带","分隔的字符串
        //这个方法有个好处：拼接后的字符串，是不会在字符串最前面或最后面多个“，”
        return StringUtils.join(finalUrls, ",");
    }


}
